﻿using BarManager.Core.Entity;
using System;
using System.Collections.Generic;
using System.Linq.Expressions;

namespace BarManager.Core.ApplicationService.Interfaces
{
    public interface IApplicationService<TEntity> where TEntity : class
    {
        TEntity Get(Expression<Func<TEntity, bool>> condition);
        IEnumerable<TEntity> GetAll();
        IEnumerable<TEntity> Find(Expression<Func<TEntity, bool>> condition);           
        TEntity Create();
        IEnumerable<string> Add(TEntity entity);
        IEnumerable<string> Update(TEntity entity);
        IEnumerable<string> Delete(TEntity entity);
    }
}
